paint-brush
Los desarrolladores quieren codificar. Por lo tanto, sin servidor.por@creativefisher
1,222 lecturas
1,222 lecturas

Los desarrolladores quieren codificar. Por lo tanto, sin servidor.

por Raman Sharma2022/04/19
Read on Terminal Reader
Read this story w/o Javascript

Demasiado Largo; Para Leer

Serverless hace que la nube sea accesible para todos los desarrolladores al quitarle su aura. Serverless se enfoca en la productividad del desarrollador, no en la sofisticación o la sofisticación. También proporciona un lienzo para la experimentación fácil y rápida. Existen múltiples escenarios en la tecnología sin servidor que le permiten hacer cosas similares en la nube, que probablemente será la única sin servidor sin servidor que proporcione cosas similares para hacer, incluso en la nube optimizada sin servidor, o salidas similares sin servidor similares, proporcionarán similares resultados.

Company Mentioned

Mention Thumbnail
featured image - Los desarrolladores quieren codificar. Por lo tanto, sin servidor.
Raman Sharma HackerNoon profile picture

En este artículo, no voy a definir qué es serverless. Ni siquiera me extenderé en los beneficios económicos y arquitectónicos de serverless de los que todos hemos oído hablar: operaciones de infraestructura reducidas, escala instantánea impulsada por eventos y costos bajos.


En su lugar, quiero argumentar por qué serverless es lo que debería importar a todos los desarrolladores, ya sea que a sus jefes les importe o no, TODAVÍA.


Empezando por una historia personal, por supuesto…


Nunca he hecho ningún "desarrollo web". Las comillas dobles aquí no pretenden burlarse del concepto, sino indicar mi ignorancia sobre lo que significa. No sabía la diferencia entre un servicio, un nivel, Apache, IIS, ASP, JSP, JS, CSS u otras siglas durante mucho tiempo. Como desarrollador de software, había escrito aplicaciones de escritorio de creación de código C++ para Windows o aplicaciones de administración de servidor de creación de código C para Linux. Siempre pensé que eso es lo que deberían hacer los chicos geniales y que todas las "cosas de la web" eran para programadores menores.


Cuanto más me alejaba de la web, más enigmática se volvía para mí. Cosas como REST, JSON, WebAPI, etc., aparecieron en cada segundo artículo de Internet. Las personas que creaban aplicaciones móviles hablaban de crear "backends de servicios web" para sus aplicaciones, lo que me confundió. No ayudó que la siguiente cosa más popular en la ciudad, "la nube", tomara prestadas casi todas sus características de las "cosas web". Si deseaba crear aplicaciones en "la nube", tenía que comprender muy bien las "cosas de la web" o profundizar en las máquinas virtuales, los contenedores y otras tecnologías relacionadas con la virtualización. Los había evitado a ambos el tiempo suficiente para que adquirieran un cierto aura en mi mente hasta que conseguí un trabajo en el que me vi obligado a aprender todo eso. ¡AGRADECIDAMENTE!


Pero, ¿qué tiene que ver todo eso con Serverless?


Un montón.

Serverless hace que la nube sea accesible para todos los desarrolladores quitándole su aura

Estoy seguro de que a pesar de la enorme popularidad del "desarrollo web", existe un ejército de desarrolladores en todo el mundo que crean software para computadoras de escritorio, servidores, dispositivos integrados, dispositivos móviles, etc. y nunca se ocupan mucho de los aspectos "web" (al igual que yo ). Muchos de ellos, sin duda, están ansiosos por "la nube" y lo que significa para ellos, ya sea que se trate de tener habilidades empleables para el futuro o de descubrir cómo conectar/transicionar sus aplicaciones existentes a la nube (después de haber visto los memorandos corporativos para ese efecto ya).


Estos desarrolladores pueden sentirse alentados por el hecho de que todo lo que necesitan hacer para que las aplicaciones se ejecuten en "la nube" es simplemente escribir su lógica comercial. Antes de la tecnología sin servidor, su transición podría haber significado aprender muchas tecnologías que eran todas de naturaleza logística, en su mayoría solo haciendo el trabajo pesado indiferenciado. Con serverless, sus habilidades de programación son todo lo que necesitan. ¿A qué programador no le gusta la perspectiva de centrarse solo en la programación?

Serverless proporciona un lienzo para una fácil experimentación

En el mundo de los escritorios, crear pequeñas aplicaciones de consola o utilidades de línea de comandos para probar una teoría o una idea es cosa de todos los días. Sin embargo, en "la nube", a veces el procedimiento que lo acompaña para tratar de crear un prototipo de una idea muy básica está lleno de varios puntos de fricción: configuraciones, configuraciones, SDK, integraciones, etc. Serverless reduce ese dolor significativamente para los desarrolladores al manejar gran parte de ese procedimiento detrás de escena. La creación sencilla de prototipos, la experimentación rápida, el aprendizaje de los errores y el cambio basado en las lecciones son principios clave del desarrollo de software moderno. Una cualidad muy poco apreciada de serverless es su capacidad para proporcionar precisamente eso.

Serverless se enfoca en la productividad del desarrollador, no en la sofisticación

Al principio de mi carrera, el síndrome del niño genial que mencioné anteriormente (el que me mantuvo alejado de las "cosas web") también me mantuvo alejado de Visual Studio durante demasiado tiempo. Seguí con vim y gdb en Linux, incluso cuando todo el código en el que trabajé era código C/C++ multiplataforma que podía manejarse fácilmente en Visual Studio en Windows. Todo esto, solo porque fue genial descartar cualquier cosa que no fuera la línea de comandos. No quiero iniciar un debate sobre este tema, pero baste decir que al menos sentí que perdí incontables horas de productividad haciendo esto.


El punto más importante que estoy tratando de resaltar aquí es que las tecnologías de la competencia, incluso en la nube, le permiten hacer cosas similares. Hay múltiples escenarios en los que las máquinas virtuales, los contenedores o los sistemas sin servidor proporcionarán resultados similares. Sin embargo, la tecnología sin servidor probablemente será la única que optimice la productividad del desarrollador al brindar una experiencia centrada en la moneda del desarrollador: no máquinas virtuales, contenedores, orquestadores o instancias, sino CÓDIGO. El problema del manejo productivo del código (incluso el código destinado a la nube) ha sido resuelto por IDE de clase mundial como Visual Studio.


¿Es serverless una panacea? No. ¿Tiene problemas? Por supuesto. Todos hemos oído hablar del arranque en frío, la falta de estado, los límites de duración, la memoria, etc. ¿Son estos factores decisivos? En la mayoría de los casos, no. Los beneficios de productividad ya superan estos problemas. ¿Son estos problemas insuperables? De nada. Los proveedores de la nube han visto suficiente mérito y promesa en esta tecnología para estar lo suficientemente motivados para solucionar estos problemas pronto.


En resumen, serverless presenta una gran herramienta que todos los desarrolladores deben tener en su caja de herramientas.